# comun backends

Here are the language backends. A backend for given platform is a program, written in that platform's language, that takes comun bytecode on standard input and outputs the platform's executable code on standard output -- for example a C backend is C program that turns comun bytecode to C. Writing a backend is enough to port comun to a new platform. This is usually a quite small amount of code (a few hundreds of LOC) but it's important to write a highly debugged code -- this may be harder than you think, use provided tests and documentation to help you out. Backends shouldn't check for bytecode sanity, they can expect they're passed correct bytecode. The generated code doesn't have to be readable, it's just supposed to run.